package com.cjm.algorithm.leetcode.listnode.first;

import com.cjm.algorithm.ListNode;

public class Ti83Easy {
    public static void main(String[] args) {

    }

    /**
     * 2023-09-13 22:50:26
     * 相似的解题：
     * 1、建立一个【虚拟头节点】dummy以减少边界判断， 往后的答案链表会接在dummy后面；
     * 2、使用tail代表当前有效链表的结尾
     * 3、通过原输入的head指针进行链表扫描
     *
     * @param head
     * @return
     */
    public ListNode deleteDuplicates(ListNode head) {
        ListNode dummy = new ListNode(-100);
        dummy.next = head;
        ListNode pre = dummy;
        ListNode cur = dummy.next;
        while (cur != null) {
            if (pre.val == cur.val) {
                pre.next = cur.next;
            } else {
                pre = cur;
            }
            cur = cur.next;
        }
        return dummy.next;
    }
}
